
Nombre:
LockDown 2000
Versión:
3.01
Editor:
LockDown Corp
Víctima:
LOCKDOWN2000.EXE
Herramientas:
W32Dasm
SoftICE
Cerebro
Cracker:
LW2000
Tutorial:
número 48
Renuncia: Este tutorial tiene una finalidad únicamente
educativa. No asumo ninguna responsabilidad por el mal uso de éste material.
1.
Bien, arrancamos LockDown y vamos a la
pantalla de registro y escribimos ‘1230099’ como Serial. ¡Booom! “The unlock
code you have entered …” ¿Qué demonios es esto? ¡Parece que nos hemos encontrado
con un ‘bug’! ¡Vamos a ‘corregirlo’!
2.
Cargamos el fichero en W32Dasm y buscamos
nuestra cadena (usted ya debería saber cómo hacer esto; si no es así, lea
mi tutorial número 1).
* Referenced by a (U)nconditional or
(C)onditional Jump at Address:
|:004C4BAC(U) >Vamos aquí
|
:004C4BB0 84DB test bl, bl
:004C4BB2 7523 jne 004C4BD7
:004C4BB4 6A00 push 00000000
:004C4BB6 668B0DE44C4C00 mov cx, word ptr [004C4CE4]
:004C4BBD 33D2 xor edx, edx
*Possible StringData Ref from Code Obj->"The
unlock code you have entered"
3.
¡Estupendo! Vamos a ‘004C4BAC’ y echamos
un vistazo al código:
:004C4BA2 58 pop eax
:004C4BA3 E894F4F3FF call 0040403C >Rutina de comprobación
>del Code
:004C4BA8 7504 jne 004C4BAE
:004C4BAA B301 mov bl, 01
:004C4BAC EB02 jmp 004C4BB0
* Referenced by a (U)nconditional or (C)onditional
Jump at Address:
|:004C4BA8(C)
|
:004C4BAE 33DB xor ebx, ebx
4.
Bien, veamos qué hay dentro del ‘CALL
0040403C’:
* Referenced by a CALL at Addresses:
|:0041210B ,
:00416D07 , :0041804D , :0041D59D , :0041E51C
|:0042A4CE ,
:00431F9E , :00432029 , :00432C8F , :00432F04
|:0043DA13 ,
:0043DFFD , :0043E16D , :0043E2E1 , :00440F89
|:0044104D ,
:00441428 , :004414E7 , :00441942 , :00441B96
|:00442101 ,
:004422BF , :0044FD13 , :0045F23F , :0045F676
|:00460C3C ,
:0046336B , :00463D3C , :004762A8 , :0047668D
|:0047E88F ,
:0047E9D6 , :0047FBAE , :0047FBC0 , :0048079E
|:00480A42 ,
:00480A51 , :00480A60 , :00480A6F , :00480FF2
|:00481F3B ,
:00488BB7 , :0048AEBB , :0048B712 , :0048B776
|:0048B78E ,
:0048B8A3 , :004A33F9 , :004A4722 , :004A52A2
|:004A5D12 ,
:004A620C , :004A68A9 , :004A8382 , :004A8B24
|:004ABD83 ,
:004AC29F , :004ACA0F , :004ACCD4 , :004ACF05
|:004AD0B5 ,
:004AD0E0 , :004AD0FC , :004AD149 , :004AD286
|:004AD3C2 ,
:004B05CD , :004B06D1 , :004B0901 , :004B30C6
|:004B30D5 ,
:004B30E4 , :004B30F3 , :004B3421 , :004B3861
|:004B3993 ,
:004B64A0 , :004B6529 , :004B6904 , :004B69C6
|:004B69D8 ,
:004B6A9F , :004B6AC7 , :004B6B6F , :004B6D34
|:004B6D53 ,
:004B6D7D , :004B6D9C , :004B71D0 , :004B780E
|:004B7880 ,
:004B85C7 , :004B8BDB , :004B8C18 , :004BC159
|:004BC9AB ,
:004BD23A , :004BD40D , :004BE3A9 , :004BEC7D
|:004BECFB ,
:004C0E48 , :004C0E97 , :004C156C , :004C158D
|:004C3AD2 ,
:004C3C6D , :004C4BA3 , :004C54A1 , :004C5A0A
|:004C5E1E ,
:004C5E58 , :004C5ECA , :004C5F04 , :004C5F76
|:004C5FB0 ,
:004C6022 , :004C605C , :004C60C9 , :004C6125
|:004C6181 ,
:004C61DD , :004C659E , :004C65D0 , :004C99A2
|:004C9E90 ,
:004CA568 , :004CAF3D , :004CAF72 , :004CB762
|:004CBA39 ,
:004CBAF2 , :004CBB18
|
:0040403C 53 push ebx
:0040403D 56 push esi
:0040403E 57 push edi
:0040403F 89C6 mov esi, eax >Mueve el Serial_1 a ESI
:00404041 89D7 mov edi, edx >Mueve el Serial_2 a EDI
:00404043 39D0 cmp eax, edx >Los compara
:00404045 0F848F000000 je 004040DA
:0040404B 85F6 test esi, esi
:0040404D 7468 je 004040B7
:0040404F 85FF test edi, edi
:00404051 746B je 004040BE
:00404053 8B46FC mov eax, dword ptr [esi-04]
:00404056 8B57FC mov edx, dword ptr [edi-04]
:00404059 29D0 sub eax, edx
:0040405B 7702 ja 0040405F
:0040405D 01C2 add edx, eax
5.
Bien, anotamos el ‘00404043’. Salimos
de W32Dasm y arrancamos LockDown. Pulsamos Ctrl-D para cambiarnos a SoftICE
y ponemos un breakpoint en ‘00404043’ (“BPX 00404043”). Después pulsamos F5
para seguir ejecutando el programa e intentamos registrarlo. ¡Booom! SoftICE
aparece. Entonces escribimos “D EAX” y “D EDX”. Ahora podemos ver el Serial
falso y el Serial correcto. Lo anotamos, borramos todos los breakpoints (“BC
*”) y ¡volvemos a intentarlo!
¡Enhorabuena! ¡Ya es usted un usuario registrado!
¡Se acabó! Fácil, ¿no? ¿Algún comentario? Envíeme
un email a LW2000@gmx.net.
o vaya a http://www.LW2000.cjb.net
Gracias a tKC por sus tutoriales. Empecé leyendo su
primer tutorial y todavía sigo leyéndolos.
Traducción de: MeGaBiTe